package com.cyl.manager.pms.domain.vo;

import com.cyl.manager.pms.domain.entity.Sku;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseAudit;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
/**
 * 商品信息 数据视图对象
 * 
 * @author zcc
 */
@Data
public class ProductVO extends BaseAudit {
   /** ID */
    private Long id;
   /** BRAND_ID */
    @Excel(name = "BRAND_ID")
    private Long brandId;
   /** CATEGORY_ID */
    @Excel(name = "CATEGORY_ID")
    private Long categoryId;
   /** 商品编码 */
    @Excel(name = "商品编码")
    private String outProductId;
   /** NAME */
    @Excel(name = "NAME")
    private String name;
   /** 主图 */
    @Excel(name = "主图")
    private String pic;
   /** 画册图片，连产品图片限制为5张，以逗号分割 */
    @Excel(name = "画册图片，连产品图片限制为5张，以逗号分割")
    private String albumPics;
   /** 上架状态：0->下架；1->上架 */
    @Excel(name = "上架状态：0->下架；1->上架")
    private Integer publishStatus;
   /** 排序 */
    @Excel(name = "排序")
    private Integer sort;
   /** PRICE */
    @Excel(name = "价格")
    private BigDecimal price;
    /** 原价 */
    @Excel(name = "原价")
    private BigDecimal originalprice;
    
    /** 采购价 */
    @Excel(name = "采购价")
    private BigDecimal cgprice;
    
   /** 单位 */
    @Excel(name = "单位")
    private String unit;
   /** 商品重量，默认为克 */
    @Excel(name = "商品重量，默认为克")
    private BigDecimal weight;
   /** 产品详情网页内容 */
    @Excel(name = "产品详情网页内容")
    private String detailHtml;
   /** 移动端网页详情 */
    @Excel(name = "移动端网页详情")
    private String detailMobileHtml;
   /** 品牌名称 */
    @Excel(name = "品牌名称")
    private String brandName;
   /** 商品分类名称 */
    @Excel(name = "商品分类名称")
    private String productCategoryName;
    @Excel(name = "商品销售属性，json格式")
    private String productAttr;
    private List<Sku> skuList;
    /*   2025-02-08  */
    @Excel(name = "会员上架状态：0->下架；1->上架")
    private Integer memberPublishStatus;
    
    @Excel(name = "对团长上架状态：0->下架；1->上架")
    private Integer shopPublishStatus;
    
    @Excel(name = "对核销上架状态：0->下架；1->上架")
    private Integer hxyPublishStatus;
    
    @ApiModelProperty("直播间部门")
    private Long deptZbjId;
    
    
    @ApiModelProperty("是否能取消 0不可以 1可以")
    @Excel(name = "是否能取消 0不可以 1可以")
    private Integer sfnqx;
    
    @ApiModelProperty("商品标签")
    @Excel(name = "商品标签")
    private String spbq;
    
    @ApiModelProperty("商品简介")
    @Excel(name = "商品简介")
    private String spjs;
    
    @ApiModelProperty("可见店铺")
    @Excel(name = "可见店铺")
    private String kjdpids;
    
    @ApiModelProperty("是否获得积分0不能 1可以")
    @Excel(name = "是否获得积分0不能 1可以")
    private Integer sfhdjf;
    
    @ApiModelProperty("每人限购数量")
    private Long mrxgs;
    
    @ApiModelProperty("每单限购数量")
    private Long mdxgs;
    

    @ApiModelProperty("起购数量")
    private Long qgs;
    

    @ApiModelProperty("真实销量")
    private Long zsxl;
    

    @ApiModelProperty("虚拟销量")
    private Long xlxl;
    
    
    @ApiModelProperty("删除标志（0代表存在 2代表删除）")
    private Integer delFlag;
    
    @ApiModelProperty("订单流程：0 正常流程 1支付就待提货")
    @Excel(name = "订单流程：0正常流程  1支付就待提货")
    private Integer process;
    
    @ApiModelProperty("可见会员标签")
    @Excel(name = "可见会员标签")
    private String kjhqbqs;
    
    @ApiModelProperty("店铺结算金额")
    private BigDecimal dpjsprice;
    
    @ApiModelProperty("产品类型  1 正常商品 2 福利券商品 3 积分商品")
    @Excel(name = "产品类型")
    private String cplx;
    
    @ApiModelProperty("兑换的福利券分类id")
    @Excel(name = "兑换的福利券分类id")
    private Long dhCouponCategoryId;
    
    @ApiModelProperty("替用福利券")
    @Excel(name = "替用福利券") //当兑换福利券不足时采用替用福利券抵扣  格式[{"id":200,"name":"万能券","num":1}]
    private String dyCouponCategoryJson;
    
    
    @ApiModelProperty("可退款时间")//在此时间之前可以退款，但受到锁定的限制
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime ktkTime;
    
    @ApiModelProperty("兑换福利券的数量")
    @Excel(name = "兑换福利券的数量")
    private Long dhCouponCategoryNum;
    
    @ApiModelProperty("兑换积分数量")
    @Excel(name = "兑换积分数量")
    private BigDecimal dhJssl;
    
    private String flqmc;

}
